package com.xbongbong.pro.constant;

import com.xbongbong.paas.enums.ConditionEnum;

/**
 * 过滤条件中各个字段的逻辑符号
 * https://xbb.yuque.com/lfwuxq/vsf9sv/ap8doo
 * @author 吴峰
 * @date 2021/01/06 9:58
 */
public class RuleFilterConditionConstant {


    /**
     * 文本规则：等于/不等于；等于任意一个/不等于任意一个；包含/不包含；为空/不为空
     */
    public static final String[] TEXT = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 多行文本：包含/不包含；为空/不为空
     */
    public static final String[] TEXTAREA = {ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
              ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 流水号：等于/不等于；等于任意一个/不等于任意一个；包含/不包含；为空/不为空
     */
    public static final String[] SERIALNO = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 下拉框：等于/不等于；等于任意一个/不等于任意一个；包含/不包含；为空/不为空
     */
    public static final String[] COMBO = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 单选按钮：等于/不等于；等于任意一个/不等于任意一个；包含/不包含；为空/不为空
     */
    public static final String[] RADIO_GROUP = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 下拉框复选：包含任意一个；同时包含；等于；为空/不为空
     */
    public static final String[] COMBO_CHECK = {ConditionEnum.INCLUDE.getSymbol(), ConditionEnum.ALLINCLUDE.getSymbol(),ConditionEnum.EQUAL.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 复选框：包含任意一个；同时包含；等于；为空/不为空
     */
    public static final String[] CHECKBOX_GROUP = {ConditionEnum.INCLUDE.getSymbol(), ConditionEnum.ALLINCLUDE.getSymbol(),ConditionEnum.EQUAL.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 成员多选：包含任意一个；同时包含；等于；为空/不为空
     */
    public static final String[] USER_GROUP = {ConditionEnum.INCLUDE.getSymbol(), ConditionEnum.ALLINCLUDE.getSymbol(),ConditionEnum.EQUAL.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 部门多选：包含任意一个；同时包含；等于；为空/不为空
     */
    public static final String[] DEPT_GROUP = {ConditionEnum.INCLUDE.getSymbol(), ConditionEnum.ALLINCLUDE.getSymbol(),ConditionEnum.EQUAL.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 成员单选：等于/不等于；等于任意一个/不等于任意一个；为空/不为空
     */
    public static final String[] USER = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 部门单选：等于/不等于；等于任意一个/不等于任意一个；为空/不为空
     */
    public static final String[] DEPT = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),
            ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 所选部门：等于/不等于；等于任意一个/不等于任意一个；为空/不为空
     */
    public static final String[] DEPARTMENTID = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 创建人：等于/不等于；等于任意一个/不等于任意一个；为空/不为空
     */
    public static final String[] CREATORID = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };
    /**
     * 地址：等于；为空/不为空
     */
    public static final String[] ADDRESS = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};

    /**
     * 数字：等于/不等于；大于/小于；大于等于/小于等于；选择范围；为空/不为空
     */
    public static final String[] NUM = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.GREATERTHAN.getSymbol(), ConditionEnum.LESSTHAN.getSymbol(),
            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};

    /**
     * 日期：等于/不等于；大于等于/小于等于；选择范围；为空/不为空；动态值
     */
    public static final String[] DATETIME = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol(), ConditionEnum.DYNAMIC.getSymbol()};
    /**
     * 创建时间：等于/不等于；大于等于/小于等于；选择范围；为空/不为空
     */
    public static final String[] ADDTIME = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};
    /**
     * 更新时间：等于/不等于；大于等于/小于等于；选择范围；为空/不为空
     */
    public static final String[] UPDATETIME = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};

    /**
     * 关联单选：等于/不等于；大于/小于；大于等于/小于等于；选择范围；为空/不为空
     */
    public static final String[] LINK_BUSINESS_SINGLE = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};

    /**
     * 生日：等于/不等于；大于等于/小于等于；选择范围；为空/不为空
     */
//    public static final String[] BIRTHDAY = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),
//            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};
    /**
     * 星级：等于/不等于；大于/小于；大于等于/小于等于；选择范围；为空/不为空
     */
    public static final String[] STAR = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.GREATERTHAN.getSymbol(), ConditionEnum.LESSTHAN.getSymbol(),
            ConditionEnum.GREATEREQUAL.getSymbol(), ConditionEnum.LESSEQUAL.getSymbol(),  ConditionEnum.RANGE.getSymbol(), ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};
    /**
     * 音频：为空/不为空
     */
    public static final String[] VIDEO = {ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};

    /**
     * 阶段推进器：等于/不等于；等于任意一个/不等于任意一个；包含/不包含；为空/不为空
     */
    public static final String[] STAGE_THRUSTER = {ConditionEnum.EQUAL.getSymbol(), ConditionEnum.NOEQUAL.getSymbol(),ConditionEnum.LIKE.getSymbol(), ConditionEnum.NOLIKE.getSymbol(),
            ConditionEnum.IN.getSymbol(), ConditionEnum.NOIN.getSymbol(),  ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol() };

    /**
     * 手签字段：为空/不为空
     */
    public static final String[] MANUAL_SIGN = {ConditionEnum.EMPTY.getSymbol(), ConditionEnum.NOEMPTY.getSymbol()};
}
